package com.atguigu.network;

import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.util.ArrayList;
import java.util.List;

public class Demo07UDPClient {

    public static void main(String[] args) throws IOException {

        // 1、创建 Socket 对象代表 UDP 连接
        DatagramSocket datagramSocket = new DatagramSocket();

        // 2、准备服务器端的 IP 地址和端口号
        InetAddress inetAddress = InetAddress.getByName("127.0.0.1");
        int port = 9999;

        // 3、准备要发送给服务器的数据
        List<String> sendDataList = new ArrayList<>();
        sendDataList.add("恭喜发财001");
        sendDataList.add("恭喜发财002");
        sendDataList.add("恭喜发财003");
        sendDataList.add("恭喜发财004");
        sendDataList.add("恭喜发财005");

        // 4、遍历集合，发送数据
        for (String sendData : sendDataList) {
            // [1]获取要发送的数据的字节数组
            byte[] bytes = sendData.getBytes();

            // [2]封装一个 Packet 对象，里面包含要发送的数据和服务器的地址
            DatagramPacket datagramPacket = new DatagramPacket(bytes, 0, bytes.length, inetAddress, port);

            // [3]发送数据包
            datagramSocket.send(datagramPacket);
        }

        // 5、关闭连接
        datagramSocket.close();
    }

}
